package com.oop;

import com.oop.Demo07.Person;
import com.oop.Demo07.Student;

//多态
public class Application07 {
    public static void main(String[] args) {
        //Student 调用自己的方法或继承的父类的方法
        Student s1 = new Student();
        //Person 指向子类，但不能调用子类独有的方法
        Person s2 = new Student();
        Object s3 = new Student();

        //对象执行什么方法，看对象左边的类型
        //子类重写了父类的方法，执行子类方法
        ((Student) s2).eat();
        s1.eat();
    }
}

/*
    多态注意事项：
        1、多态是方法的多态，属性没有多态
        2、父类和子类有联系
        3、存在条件：继承关系，方法需要重写，父类引用指向子类对象

            1、private 方法
            2、final 常量
            3、static 方法，属于类，不属于实例

 */
